﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	[DataContract]
	public enum ТипыРесурсовМеханизмаОнлайнСервисовРО
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"988d76e9-a58d-4b58-a5d2-97ad0cf5782e\", \"Представление\":\"СправочникФормИФорматов\"}")]
		СправочникФормИФорматов = 0,//Справочник форм и форматов
		[EnumMember(Value = "{\"Ссылка\":\"4c946140-2231-4175-a5be-34d728eb6a73\", \"Представление\":\"СправочникРелизов\"}")]
		СправочникРелизов = 1,//Справочник релизов
		[EnumMember(Value = "{\"Ссылка\":\"81e23be4-03d9-48b0-8e1e-b95ddf82d498\", \"Представление\":\"ИнформацияОРелизе\"}")]
		ИнформацияОРелизе = 2,//Информация о релизе
		[EnumMember(Value = "{\"Ссылка\":\"b90c4878-e6cb-4658-8f13-5ccd3e5a82c4\", \"Представление\":\"СправочникВнешнихМодулейДокументооборота\"}")]
		СправочникВнешнихМодулейДокументооборота = 3,//Справочник внешних модулей защищенного документооборота
	}
	public static partial class ТипыРесурсовМеханизмаОнлайнСервисовРО_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid СправочникФормИФорматов = new Guid("ad97d2a5-f50c-2e78-4b58-a58d988d76e9");//Справочник форм и форматов
		public static readonly Guid СправочникРелизов = new Guid("d734bea5-eb28-736a-4175-22314c946140");//Справочник релизов
		public static readonly Guid ИнформацияОРелизе = new Guid("5db91e8e-82df-98d4-48b0-03d981e23be4");//Информация о релизе
		public static readonly Guid СправочникВнешнихМодулейДокументооборота = new Guid("cd5c138f-5a3e-c482-4658-e6cbb90c4878");//Справочник внешних модулей защищенного документооборота
		public static ТипыРесурсовМеханизмаОнлайнСервисовРО Получить(this ТипыРесурсовМеханизмаОнлайнСервисовРО Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static ТипыРесурсовМеханизмаОнлайнСервисовРО Получить(this ТипыРесурсовМеханизмаОнлайнСервисовРО Значение, Guid Ссылка)
		{
			if(Ссылка == СправочникФормИФорматов)
			{
				return ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникФормИФорматов;
			}
			else if(Ссылка == СправочникРелизов)
			{
				return ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникРелизов;
			}
			else if(Ссылка == ИнформацияОРелизе)
			{
				return ТипыРесурсовМеханизмаОнлайнСервисовРО.ИнформацияОРелизе;
			}
			else if(Ссылка == СправочникВнешнихМодулейДокументооборота)
			{
				return ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникВнешнихМодулейДокументооборота;
			}
			return ТипыРесурсовМеханизмаОнлайнСервисовРО.ПустаяСсылка;
		}
		public static byte[] Ключ(this ТипыРесурсовМеханизмаОнлайнСервисовРО Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this ТипыРесурсовМеханизмаОнлайнСервисовРО Значение)
		{
			switch (Значение)
			{
				case ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникФормИФорматов: return СправочникФормИФорматов;
				case ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникРелизов: return СправочникРелизов;
				case ТипыРесурсовМеханизмаОнлайнСервисовРО.ИнформацияОРелизе: return ИнформацияОРелизе;
				case ТипыРесурсовМеханизмаОнлайнСервисовРО.СправочникВнешнихМодулейДокументооборота: return СправочникВнешнихМодулейДокументооборота;
			}
			return Guid.Empty;
		}
	}
}